home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 41 / Amiga Format CD41 (1999-06)(Future Publishing)(GB)[!][issue 1999-07].iso / -seriously_amiga- / misc / vinced / include / vnc / keyboard.h < prev    next >
C/C++ Source or Header  |  1999-04-19  |  8KB  |  198 lines

  1. #ifndef VNC_KEYBOARD_H
  2. #define VNC_KEYBOARD_H
  3. /*********************************************************
  4.  ** ViNCEd                                              **
  5.  ** a DOS - window handler                              **
  6.  **                                                     **
  7.  ** © 1991-98 THOR-Software inc.                        **
  8.  ** Version 3.60                                        **
  9.  **                                                     **
  10.  ** program version 3.60 21 Aug 1998    THOR            **
  11.  **                                                     **
  12.  ** ViNCEd Keyboard Definitions                         **
  13.  **-----------------------------------------------------**
  14.  **                                                     **
  15.  ** all use at your own risk,etc.,etc.                  **
  16.  **                                                     **
  17.  ** Everything declared as "reserved" or                **
  18.  ** "not used" is NOT free for your use,                **
  19.  ** it will propably used in a later release.           **
  20.  ** All FREE entries are free for public                **
  21.  ** use and are, if not otherwise noticed,              **
  22.  ** initialized as ZERO                                 **
  23.  *********************************************************/
  24.  
  25. #ifndef EXEC_TYPES_H
  26. #include <exec/types.h>
  27. #endif
  28.  
  29. #ifndef DEVICES_INPUTEVENT_H
  30. #include <devices/inputevent.h>
  31. #endif
  32.  
  33. /* This defines one entry in the keyboard definition */
  34.  
  35. struct ViKey {
  36.         UBYTE   vik_Flags;              /* flags, see below */
  37.         UBYTE   vik_Code;               /* raw keyboard code or
  38.                                            ASCII value */
  39.         UBYTE   vik_Qualifier;          /* see below */
  40.         UBYTE   vik_ID;                 /* function ID */
  41. };
  42.  
  43. /* The following bits are defined for vik_Flags: */
  44.  
  45. /* This is a valid, assigned definition.
  46.    Must be set or this entry is vacant */
  47. #define VPKF_ASSIGNED_BIT       7
  48. #define VPKF_ASSIGNED_MASK      (1<<7)
  49.  
  50. /* This is an ASCII match and not a match by the
  51.    keyboard raw key code */
  52. #define VPKF_ASCII_BIT          3
  53. #define VPKF_ASCII_MASK         (1<<3)
  54.  
  55. /* Be warned: ViNCEd will pass more flags in this variable, but
  56.    these are INTENTIONALLY undocumented. Especially, do not
  57.    set these and do not play with them. */
  58.  
  59.  
  60. /* ViNCEd qualifier masks */
  61.  
  62. #define VEQUALIFIER_LSHIFT              IEQUALIFIER_LSHIFT
  63. #define VEQUALIFIER_RSHIFT              IEQUALIFIER_RSHIFT
  64. #define VEQUALIFIER_SHIFT               (VEQUALIFIER_LSHIFT|VEQUALIFIER_RSHIFT)
  65.  
  66. #define VEQUALIFIER_NUMLOCK             0x0004
  67.  
  68. #define VEQUALIFIER_CONTROL             IEQUALIFIER_CONTROL
  69.  
  70. #define VEQUALIFIER_LALT                IEQUALIFIER_LALT
  71. #define VEQUALIFIER_RALT                IEQUALIFIER_RALT
  72. #define VEQUALIFIER_ALT                 (VEQUALIFIER_LALT|VEQUALIFIER_RALT)
  73.  
  74. #define VEQUALIFIER_LCOMMAND            IEQUALIFIER_LCOMMAND
  75. #define VEQUALIFIER_RCOMMAND            IEQUALIFIER_RCOMMAND
  76.  
  77.  
  78. /* The extended keymap definition structure */
  79.  
  80. struct ViNCExtMap {
  81.         struct ViKey    vi_entry[256];
  82. };
  83.  
  84. /* Keyboard function IDs */
  85.  
  86. #define KF_CURSOR_LEFT                  0x00
  87. #define KF_CURSOR_RIGHT                 0x01
  88. #define KF_CURSOR_UP                    0x02
  89. #define KF_CURSOR_DOWN                  0x03
  90. #define KF_HISTORY_UP                   0x04
  91. #define KF_HISTORY_DOWN                 0x05
  92. #define KF_SEARCH_PARTIAL_UPWARDS       0x06
  93. #define KF_SEARCH_PARTIAL_DOWNWARDS     0x07
  94. #define KF_SEARCH_HISTORY_UPWARDS       0x08
  95. #define KF_SEARCH_HISTORY_DOWNWARDS     0x09
  96. #define KF_HALF_SCREEN_LEFT             0x0a
  97. #define KF_HALF_SCREEN_RIGHT            0x0b
  98. #define KF_HALF_SCREEN_UP               0x0c
  99. #define KF_HALF_SCREEN_DOWN             0x0d
  100. #define KF_TO_LEFT_BORDER               0x0e
  101. #define KF_TO_RIGHT_BORDER              0x0f
  102. #define KF_TO_TOP_OF_SCREEN             0x10
  103. #define KF_TO_BOTTOM_OF_SCREEN          0x11
  104. #define KF_PREV_WORD                    0x12
  105. #define KF_NEXT_WORD                    0x13
  106. #define KF_PREV_COMPONENT               0x14
  107. #define KF_NEXT_COMPONENT               0x15
  108. #define KF_HOME                         0x16
  109. #define KF_END                          0x17
  110. #define KF_SCROLL_UP                    0x18
  111. #define KF_SCROLL_DOWN                  0x19
  112. #define KF_SCROLL_HALF_SCREEN_UP        0x1a
  113. #define KF_SCROLL_HALF_SCREEN_DOWN      0x1b
  114.  
  115. #define KF_SEND_INPUTS                  0x20
  116. #define KF_SPLIT_LINE                   0x21
  117. #define KF_INSERT_CTRL_J                0x22
  118. #define KF_SEND_COMPLETE_LINE           0x23
  119. #define KF_LINE_FEED                    0x24
  120.  
  121. #define KF_TAB_FORWARDS                 0x32
  122. #define KF_TAB_BACKWARDS                0x33
  123. #define KF_EXPAND_PATH                  0x34
  124. #define KF_EXPAND_BACKWARDS             0x35
  125. #define KF_EXPAND_SHORT                 0x36
  126. #define KF_EXPAND_SHORT_BKWDS           0x37
  127. #define KF_EXPAND_DEVICES               0x38
  128. #define KF_EXPAND_DEVS_BKWDS            0x39
  129. #define KF_EXPAND_DIRS                  0x3a
  130. #define KF_EXPAND_DIRS_BKWDS            0x3b
  131. #define KF_EXPAND_ICONS                 0x3c
  132. #define KF_EXPAND_ICONS_BKWDS           0x3d
  133. #define KF_EXPAND_ALT                   0x3e
  134. #define KF_EXPAND_ALT_BKWDS             0x3f
  135.  
  136. #define KF_SEND_CTRL_C                  0x40
  137. #define KF_SEND_CTRL_D                  0x41
  138. #define KF_SEND_CTRL_E                  0x42
  139. #define KF_SEND_CTRL_F                  0x43
  140. #define KF_SEND_CTRL_C_TO_ALL           0x44
  141. #define KF_SEND_CTRL_D_TO_ALL           0x45
  142. #define KF_SEND_CTRL_E_TO_ALL           0x46
  143. #define KF_SEND_CTRL_F_TO_ALL           0x47
  144.  
  145. #define KF_DELETE_FORWARDS              0x50
  146. #define KF_DELETE_BACKWARDS             0x51
  147. #define KF_DELETE_FULL_LINE             0x52
  148. #define KF_CUT_FULL_LINE                0x53
  149. #define KF_DELETE_INPUTS                0x54
  150. #define KF_CUT_INPUTS                   0x55
  151. #define KF_DELETE_WORD_FWDS             0x56
  152. #define KF_CUT_WORD_FWDS                0x57
  153. #define KF_DELETE_WORD_BKWDS            0x58
  154. #define KF_CUT_WORD_BKWDS               0x59
  155. #define KF_DELETE_COMPONENT_FWDS        0x5a
  156. #define KF_CUT_COMPONENT_FWDS           0x5b
  157. #define KF_DELETE_COMPONENT_BKWDS       0x5c
  158. #define KF_CUT_COMPONENT_BKWDS          0x5d
  159. #define KF_DELETE_END_OF_LINE           0x5e
  160. #define KF_CUT_END_OF_LINE              0x5f
  161. #define KF_DELETE_START_OF_LINE         0x60
  162. #define KF_CUT_START_OF_LINE            0x61
  163. #define KF_DELETE_END_OF_DISPLAY        0x62
  164. #define KF_FORM_FEED                    0x63
  165. #define KF_CLEAR_SCREEN                 0x64
  166.  
  167. #define KF_CUT                          0x70
  168. #define KF_COPY                         0x71
  169. #define KF_PASTE                        0x72
  170. #define KF_HIDE                         0x73
  171. #define KF_SELECT_ALL                   0x74
  172. #define KF_COPY_QUIET                   0x75
  173. #define KF_RESET                        0x76
  174. #define KF_FULL_RESET                   0x77
  175.  
  176. #define KF_TOGGLE_ESC                   0x80
  177. #define KF_TOGGLE_NUMLOCK               0x81
  178. #define KF_TOGGLE_OVERWRITE             0x82
  179. #define KF_SUSPEND                      0x83
  180. #define KF_RESUME                       0x84
  181. #define KF_ABORT_EXPANSION              0x85
  182. #define KF_SCROLL_TO_CURSOR             0x86
  183. #define KF_REWIND_HISTORY               0x87
  184. #define KF_YANK                         0x88
  185. #define KF_GENERATE_EOF                 0x89
  186. #define KF_DISPLAY_BEEP                 0x8c
  187. #define KF_TOGGLE_PAUSE                 0x8d
  188. #define KF_HELP                         0x8e
  189. #define KF_FORK_NEW_SHELL               0x8f
  190. #define KF_INSERT_CSI                   0x90
  191. #define KF_INSERT_ESC                   0x91
  192.  
  193. #endif
  194.  
  195.  
  196.  
  197.  
  198.